-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Ajout d'un attribut pour filtrer l'envoi des besoins d'achat #1446
Conversation
…voi aux partenaires
…al_partners_only est True
…alidated_sent_batch'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Quelques petites modification à apporter mais cool dans l'ensemble :)
lemarche/tenders/admin.py
Outdated
if obj.amount_int > settings.BREVO_TENDERS_MIN_AMOUNT_TO_SEND: | ||
api_brevo.create_deal(tender=obj, owner_email=request.user.email) | ||
# we link deal(tender) with author contact | ||
api_brevo.link_deal_with_contact_list(tender=obj) | ||
self.message_user(request, "Ce dépôt de besoin a été synchronisé avec Brevo") | ||
self.message_user(request, "Ce dépôt de besoin a été validé. Il sera envoyé en temps voulu :)") | ||
obj.save() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pas besoin du .save()
le set_validated
le fait déjà, mais du coup tu peux remonter obj.send_to_commercial_partners_only = True
pour le mettre avant le set_validated
lemarche/tenders/models.py
Outdated
@@ -632,6 +633,9 @@ class Tender(models.Model): | |||
) # could become foreign key | |||
# Admin specific for tenders | |||
is_reserved_tender = models.BooleanField("Appel d'offre reservé", null=True) | |||
send_to_commercial_partners_only = models.BooleanField( | |||
"Envoyer uniquement aux partenaires externes", default=False |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Envoyer uniquement aux partenaires externes", default=False | |
"Envoyer uniquement aux partenaires commerciaux", default=False |
Préciser commerciaux pour ne pas confondre avec les partenaires externes (types facilitateurs ou autre)
const recipient = button.getAttribute('data-recipient'); | ||
const title = button.getAttribute('data-title'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
const recipient = button.getAttribute('data-recipient'); | |
const title = button.getAttribute('data-title'); | |
const recipient = button.dataset.recipient; | |
const title = button.dataset.title; |
Tu utilise généralement les getAttribute pour les attributs non-standards, mais pour les data-* tu peux utiliser dataset
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merci @chloend pour ta première PR, elle est top ! J'ai fait une petite remarque sur le message de confirmation pour ma part.
Aussi, à l'usage, je trouve qu'on perd l'info dans l'admin que le dépôt a été envoyé uniquement aux partenaires. Je pense qu'il faut à minima afficher la case à cochée en readonly après la validation ou alors ajouter l'info après le texte "Validé le {{ tender.first_sent_at|date }}" .
messageElement.textContent = "Le besoin « " + title + " » sera envoyé aux structures."; | ||
confirmBtn.setAttribute('name', '_validate_send_to_siaes'); | ||
} else if (recipient === 'partners') { | ||
messageElement.textContent = "Le besoin « " + title + " » sera envoyé aux partenaires."; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
J'aurais peut-être précisé ici: "Le besoin '[titre]' sera envoyé uniquement aux prestataires commerciaux.". Qu'en penses tu ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merci pour ta remarque @SebastienReuiller, effectivement ce serait plus clair comme ça !
🥁 La recette jetable est prête ! 👉 Je veux tester cette PR ! |
…s de obj.set_validated
…odifiée pour plus de clarté
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bien joué pour ta première PR 💯 🌮
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LG ! Bravo !
Quoi ?
Permettre aux admins d’affecter certains dépôts de besoins à des partenaires.
Pourquoi ?
Des partenaires externes en ont fait la demande.
Comment ?
En ajout d'un bouton "Valider et envoyer aux partenaires" dans l'admin des tenders.
En ajoutant un attribut 'send_to_commercial_partners_only' dans le modèle Tender qui sera set à True en cliquant sur le bouton "Valider et envoyer aux partenaires".
En modifiant la méthode 'validated_sent_batch' de TenderQueryset pour filtrer les envois aux structures lorsque l'attribut est False
Captures d'écran (optionnel)
Ajout du bouton
Modale avec message personnalisé si structures/partenaires
Tests de l'attribut